package com.sc.VenusQueryBeta.contract.account.cunka;

import com.hengjun.kingstar.sdk.base.BasePresenter;
import com.hengjun.kingstar.sdk.base.IBaseActivity;
import com.hengjun.kingstar.sdk.base.IBaseModel;
import com.sc.VenusQueryBeta.model.bean.account.CurrencyListBean;
import com.sc.VenusQueryBeta.model.bean.account.cunka.CunKaList1;

import io.reactivex.Observable;


/**
 * Created by Administrator on 18/10/2018.
 *
 */

public interface CunKa01Contract {
     abstract class CunKa01Presenter extends BasePresenter<ICunKa01Model,ICunKa01Activity> {

         //加载存卡明细数据
         public abstract void getCunKa01(String serverAddress, String projectName, int serverPort,int clientindex,
                                         String clientAppmsgnum,String currencynameCN);

         //查询厅(根据账房那边排序)
         public abstract void queryAllCurrencyList(String serverAddress, String projectName, int serverPort);
         /**
          * 加载更多test list
          */
         public abstract void getMoreCunKa01(String serverAddress, String projectName, int serverPort,int clientindex,
                                             String clientAppmsgnum,String currencynameCN);
    }
    interface ICunKa01Model extends IBaseModel {
        //存卡明细
        Observable<CunKaList1> getCunKa01(String serverAddress, String projectName, int serverPort, int clientindex, int start, int limit,
                                          String clientAppmsgnum, String currencynameCN);

        Observable<CurrencyListBean> queryAllCurrencyList(String serverAddress, String projectName, int serverPort);
    }
    interface ICunKa01Activity extends IBaseActivity {

        /**
         *获取卡01數據成功
         * @param cunKaList2Bean
         */
        void showCunKaData1Success(CunKaList1 cunKaList2Bean);

        void showNetworkError(Throwable throwable);

        /** 显示加载更多错误
         */
        void showLoadMoreError();

        void showqueryAllCurrencyList(CurrencyListBean currencyListBean);

        /**
         * 显示没有更多数据
         */
        void showNoMoreData();
    }
}
